REUSE-ALV-Popup

Mit diesem Baustein können Sie eine ALV-Liste anzeigen, in der Tabelleneinträge ausgewählt werden können.

Der Baustein prüft, dass mindestens ein Eintrag markiert werden muss. Allerdings muss selbst abgefragt werden, wenn nur ein Eintrag markiert sein darf.

Coding

*** Data
  DATA gt_popli TYPE STANDARD TABLE OF spopli.
  DATA gs_popli TYPE spopli.

*** Einträge
  APPEND ' Auswahl 1' TO gt_popli.
  APPEND ' Auswahl 2' TO gt_popli.
  APPEND ' Auswahl A' TO gt_popli.
  APPEND ' Auswahl B' TO gt_popli.

*** Erklärenden Text hinzufügen
*** Wenn das Markierungsfeld ein "Y" enthält, dann ist die Eingabe
*** nicht möglich!!
  CLEAR gs_popli.
  gs_popli-selflag   = 'Y'.
  gs_popli-varoption = 'Bitte Einträge markieren!'.
  INSERT gs_popli INTO gt_popli INDEX 1.
  gs_popli-selflag   = 'Y'.
  gs_popli-varoption = 'Diese Einträge dann bearbeitet.'.
  INSERT gs_popli INTO gt_popli INDEX 2.
  gs_popli-selflag   = 'Y'.
  gs_popli-varoption = sy-uline.
  INSERT gs_popli INTO gt_popli INDEX 3.

*** REUSE ALV Baustein als POPUP aufrufen
  CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
    EXPORTING
      i_title               = 'Bitte Einträge markieren!!'
      i_selection           = 'X'
      i_screen_start_column = 10
      i_screen_start_line   = 3
      i_screen_end_column   = 50
      i_screen_end_line     = 10
      i_checkbox_fieldname  = 'SELFLAG'
      i_tabname             = 'GT_POPLI'
      i_structure_name      = 'SPOPLI'
    TABLES
      t_outtab              = gt_popli
    EXCEPTIONS
      OTHERS                = 2.

*** Ausgabe
  WRITE: / 'Markierte Einträge:'.
  LOOP AT gt_popli INTO gs_popli WHERE selflag = 'X'.
    WRITE: / gs_popli-varoption.
  ENDLOOP.
Enno Wulff